#ifndef CLIENTRUNABLE_H
#define CLIENTRUNABLE_H

#include "define.h"
#include <QObject>
#include <QTcpSocket>            // TCP通信类
#include <QMessageBox>
#include <QDebug>
#include <QRunnable>
#include <QBuffer>              // 提供了一个基于内存的缓冲区
#include <QJsonDocument>        // 用于处理Json数据
#include <QJsonObject>
#include <QHostAddress>         // 提供了IP地址的封装
#include <QEventLoop>           // 管理事件循环，是QT事件系统的核心部分
#include <QDir>                 // 用于访问文件系统目录（文件夹）及其内容的函数
#include <QtSql/QSqlQuery>
#include <QTextCodec>
#include "handlejson.h"

struct clientRunablePrivate
{
    qintptr sock;
    HandleJsonPtr handleJsonP;
};


class clientRunable :public QObject,public QRunnable
{
    Q_OBJECT
public:
    explicit clientRunable(qintptr sock,QObject *parent = nullptr);
    void run()override;
private:
    clientRunablePrivate *p;
    QByteArray buffer;          // 人造缓冲区(自定义)

};

#endif // CLIENTRUNABLE_H
